package com.ms.service.module.analysisgroup.db.model;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import com.xpec.c4.db.model.basic.BasicModel;

/**
 * 遊戲館收入與支出紀錄
 */
@Entity
@org.hibernate.annotations.Entity(dynamicInsert = true, dynamicUpdate = true)
@Table(name = "game_revenue_and_expenditure_log")
public class GameRevenueAndExpenditureModel extends BasicModel{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	private Integer recordID;
	
	/**遊戲館名稱*/
	private String gameNameWithHallType;
	
	/**遊戲館名稱(中文)*/
	private String gameNameWithHallTypeDesc;
	
	/**正式幣總押(收入)*/
	private BigDecimal totalBetFormal;
	
	/**正式幣總得分(支出)*/
	private BigDecimal totalScoreFormal;
	
	/**總JP(支出)*/
	private BigDecimal totalJP;
	
	/**總使用卡片得分*/
	private BigDecimal totalCardScore;
	
	/**試玩幣總押(收入)*/
	private BigDecimal totalBetTrial;
	
	/**試玩幣總得分(支出)*/
	private BigDecimal totalScoreTrial;
	
	/**紀錄時間*/
	private Date recordTime;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	public Integer getRecordID() {
		return recordID;
	}

	public void setRecordID(Integer recordID) {
		this.recordID = recordID;
	}

	public String getGameNameWithHallType() {
		return gameNameWithHallType;
	}

	public void setGameNameWithHallType(String gameNameWithHallType) {
		this.gameNameWithHallType = gameNameWithHallType;
	}

	public String getGameNameWithHallTypeDesc() {
		return gameNameWithHallTypeDesc;
	}

	public void setGameNameWithHallTypeDesc(String gameNameWithHallTypeDesc) {
		this.gameNameWithHallTypeDesc = gameNameWithHallTypeDesc;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalBetFormal() {
		return totalBetFormal;
	}

	public void setTotalBetFormal(BigDecimal totalBetFormal) {
		this.totalBetFormal = totalBetFormal;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalScoreFormal() {
		return totalScoreFormal;
	}

	public void setTotalScoreFormal(BigDecimal totalScoreFormal) {
		this.totalScoreFormal = totalScoreFormal;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalJP() {
		return totalJP;
	}

	public void setTotalJP(BigDecimal totalJP) {
		this.totalJP = totalJP;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalBetTrial() {
		return totalBetTrial;
	}

	public void setTotalBetTrial(BigDecimal totalBetTrial) {
		this.totalBetTrial = totalBetTrial;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalScoreTrial() {
		return totalScoreTrial;
	}

	public void setTotalScoreTrial(BigDecimal totalScoreTrial) {
		this.totalScoreTrial = totalScoreTrial;
	}

	public Date getRecordTime() {
		return recordTime;
	}

	public void setRecordTime(Date recordTime) {
		this.recordTime = recordTime;
	}

	@Column(precision = 19, scale = 2, columnDefinition = "DECIMAL(19,2) default 0.0")
	public BigDecimal getTotalCardScore() {
		return totalCardScore;
	}

	public void setTotalCardScore(BigDecimal totalCardScore) {
		this.totalCardScore = totalCardScore;
	}

}
